<?php

class AdminVistaPreviaTooltips extends TPage {
//<editor-fold defaultstate="collapsed" desc="Metodos Privados">
  /**
   * dibuja los botones "marcar como leido" y "recordar mas tarde" de la notificacion
   * @return string
   * @author VSR, 11/04/2011
   */
  private function dibujarBotonesNotificacion($skin) {
    $html = "";
    $sb = new StringBuilder();

    try {
      $sb->append("<div style=\"text-align:right; padding-top:10px;\">");
      $sb->append("  <ul class=\"floatRightLI cssTextoNormal\">");
      $sb->append("    <li style=\"padding-left:5px\"><input type=\"button\" value=\"Le&iacute;do\" class=\"$skin-boton-leido\" /></li>");
      $sb->append("    <li style=\"padding-left:5px\"><input type=\"button\" value=\"Recordar desp&uacute;es\" class=\"$skin-boton-recordar\" /></li>");
      $sb->append("  </ul>");
      $sb->append("</div>");
      $html = $sb->toString();
    } catch (Exception $e) {
      $html = "";
    }
    return $html;
  }
//</editor-fold>

  public function  onLoad($param) {
    parent::onLoad($param);
    $view = urldecode(Utilidades::isNull($this->Request["view"],""));
    $titulo = urldecode(Utilidades::isNull($this->Request["titulo"],"<i>Escriba un t&iacute;tulo</i>"));
    $controlHtml = urldecode(Utilidades::isNull($this->Request["controlHtml"],"notificacion_tooltips"));
    $skin = urldecode(Utilidades::isNull($this->Request["skin"],"blue"));
    $posicion = urldecode(Utilidades::isNull($this->Request["posicion"],"tl"));
    $ajusteTop = urldecode(Utilidades::isNull($this->Request["ajusteTop"],""));
    $ajusteLeft = urldecode(Utilidades::isNull($this->Request["ajusteLeft"],""));
    $ancho = urldecode(Utilidades::isNull($this->Request["ancho"],"250"));
    $descripcion = urldecode(Utilidades::isNull($this->Request["descripcion"],"<i>Escriba un descripci&oacute;n</i>"));
    $bodyNotificacion = "<span class=\"cssNotificacionTitulo\">{#TITULO}<br/></span><span class=\"cssNotificacionTextoNormal\">{#DESCRIPCION}</span>{#BOTONES}";
    $opciones = "";

    if($view == "1") {
      $sb = new StringBuilder();
      //si el control html no es uno de los del top, entonces lo asocia al del span
      if($controlHtml != "notificacion_top_left" && $controlHtml != "notificacion_top_center" && $controlHtml != "notificacion_top_right") {
        $controlHtml = "notificacion_tooltips";
      }
      if($skin == "-100") {$skin = "blue";}
      if($posicion == "-100") {$posicion = "tl";}

      //construye cuerpo de la notificacion
      $htmlBotones = $this->dibujarBotonesNotificacion($skin);

      $descripcion = str_replace("\n","",$descripcion);
      
      $bodyNotificacion = str_replace("{#TITULO}", $titulo, $bodyNotificacion);
      $bodyNotificacion = str_replace("{#DESCRIPCION}", $descripcion, $bodyNotificacion);
      $bodyNotificacion = str_replace("{#BOTONES}", $htmlBotones, $bodyNotificacion);

      //construye las opciones
      $opciones .= "showme:true";
      $opciones .= ", style:'cssTextoNormal'";
      $opciones .= ", sticky:1";
      $opciones .= ", mode:'$posicion'";
      $opciones .= ", width: $ancho";
      $opciones .= ", skin:'$skin'";
      if(!Utilidades::isNullOrEmpty($ajusteTop)) $opciones .= ", ajusteTop:$ajusteTop";
      if(!Utilidades::isNullOrEmpty($ajusteLeft)) $opciones .= ", ajusteLeft:$ajusteLeft";

      //escribe script para mostrar el tooltips en la pagina
      $sb->appendLine("jQuery(document).ready(function(){");
      $sb->appendLine("  jQuery('#$controlHtml').tooltip('$bodyNotificacion', { $opciones });");
      $sb->appendLine("});");
      $this->Page->ClientScript->registerEndScript("windowOnLoad", $sb->toString());
    }
  }
}

?>
